home *** CD-ROM | disk | FTP | other *** search
/ MacFormat 1995 March / macformat-022.iso / Shareware City / Developers / src / out-of-phase-102-c / OutOfPhase 1.02 Source / OutOfPhase Folder / Level 1 Extensions 29Sep94 / BufferedFileInput.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-11-23  |  3.1 KB  |  73 lines  |  [TEXT/KAHL]

  1. /* BufferedFileInput.h */
  2.  
  3. #ifndef Included_BufferedFileInput_h
  4. #define Included_BufferedFileInput_h
  5.  
  6. /* BufferedFileInput module depends on */
  7. /* MiscInfo.h */
  8. /* Audit */
  9. /* Debug */
  10. /* Definitions */
  11. /* Files */
  12. /* Memory */
  13.  
  14. struct BufferedInputRec;
  15. typedef struct BufferedInputRec BufferedInputRec;
  16.  
  17. /* forwards */
  18. struct FileType;
  19.  
  20. /* create a new buffered input object around a file.  the file is not allowed */
  21. /* to be tampered with after it has been registered with this since I am too */
  22. /* lazy to implement proper buffering in the Level 0 library like I should. */
  23. BufferedInputRec*        NewBufferedInput(struct FileType* TheFileDescriptor);
  24.  
  25. /* clean up a buffered input object from around a file.  the file may be */
  26. /* used normally after this has been called. */
  27. void                                EndBufferedInput(BufferedInputRec* BufferedThang);
  28.  
  29. /* read a raw block of data from the file.  returns True if all went well or */
  30. /* False if some data could not be written to the file. */
  31. MyBoolean                        ReadBufferedInput(BufferedInputRec* BufferedThang,
  32.                                             long RequestedBytes, char* PlaceToPut);
  33.  
  34.  
  35. /* read in a signed (2's complement) character.  returns True if successful. */
  36. MyBoolean                        ReadBufferedSignedChar(BufferedInputRec* BufferedThang,
  37.                                             signed char* SignedCharOut);
  38.  
  39. /* read in an unsigned character.  returns True if successful. */
  40. MyBoolean                        ReadBufferedUnsignedChar(BufferedInputRec* BufferedThang,
  41.                                             unsigned char* UnsignedCharOut);
  42.  
  43.  
  44. /* read in a signed (2's complement) 16-bit short little endian.  returns True if sucessful. */
  45. MyBoolean                        ReadBufferedSignedShortLittleEndian(BufferedInputRec* BufferedThang,
  46.                                             signed short* SignedShortOut);
  47. /* read in a signed (2's complement) 16-bit short big endian.  returns True if sucessful. */
  48. MyBoolean                        ReadBufferedSignedShortBigEndian(BufferedInputRec* BufferedThang,
  49.                                             signed short* SignedShortOut);
  50.  
  51. /* read in an unsigned 16-bit short little endian.  returns True if successful. */
  52. MyBoolean                        ReadBufferedUnsignedShortLittleEndian(BufferedInputRec* BufferedThang,
  53.                                             unsigned short* UnsignedShortOut);
  54. /* read in an unsigned 16-bit short big endian.  returns True if successful. */
  55. MyBoolean                        ReadBufferedUnsignedShortBigEndian(BufferedInputRec* BufferedThang,
  56.                                             unsigned short* UnsignedShortOut);
  57.  
  58. /* read in a signed (2's complement) 32-bit long little endian.  returns True if successful. */
  59. MyBoolean                        ReadBufferedSignedLongLittleEndian(BufferedInputRec* BufferedThang,
  60.                                             signed long* SignedLongOut);
  61. /* read in a signed (2's complement) 32-bit long big endian.  returns True if successful. */
  62. MyBoolean                        ReadBufferedSignedLongBigEndian(BufferedInputRec* BufferedThang,
  63.                                             signed long* SignedLongOut);
  64.  
  65. /* read in an unsigned 32-bit long little endian.  returns True if successful. */
  66. MyBoolean                        ReadBufferedUnsignedLongLittleEndian(BufferedInputRec* BufferedThang,
  67.                                             unsigned long* UnsignedLongOut);
  68. /* read in an unsigned 32-bit long big endian.  returns True if successful. */
  69. MyBoolean                        ReadBufferedUnsignedLongBigEndian(BufferedInputRec* BufferedThang,
  70.                                             unsigned long* UnsignedLongOut);
  71.  
  72. #endif
  73.